package com.castle.fortress.admin.study.exam.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * 会员考试记录表 实体类
 *
 * @author castle
 * @since 2023-02-16
 */
@Data
@ApiModel(value = "studyExamStatisticsMember对象", description = "会员考试记录表")
public class StudyExamStatisticsMemberDto implements Serializable {
	private static final long serialVersionUID = 1L;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "主键")
	@JsonProperty("id")
	private Long id;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "人员ID")
	@JsonProperty("memberId")
	private Long memberId;
	@ApiModelProperty(value = "人员名称")
	@JsonProperty("memberName")
	private String memberName;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "试卷id")
	@JsonProperty("examId")
	private Long examId;
	@ApiModelProperty(value = "试卷名称")
	@JsonProperty("examName")
	private String examName;
	@ApiModelProperty(value = "耗时，单位秒")
	@JsonProperty("timeConsuming")
	private Integer timeConsuming;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "答题时间")
	@JsonProperty("quizTime")
	private Date quizTime;
	@ApiModelProperty(value = "成绩")
	@JsonProperty("score")
	private Integer score;
	@ApiModelProperty(value = "试卷合格分")
	@JsonProperty("qualifiedScore")
	private String qualifiedScore;
	@ApiModelProperty(value = "试卷总分")
	@JsonProperty("totalScore")
	private String totalScore;
	@ApiModelProperty(value = "已考人员平均分")
	@JsonProperty("averageScore")
	private String averageScore;
	@JsonProperty("status")
	private Integer status;
	@ApiModelProperty(value = "用户试卷内容")
	private List<StudyMemberExamDto> examQuestionDTOList;
	@ApiModelProperty(value = "是否允许再次考试")
	private Boolean allowAgain;
	@ApiModelProperty(value = "是否允许显示答案")
	private Boolean showAnswer;
	//true 为未结束，false 为已结束
	@ApiModelProperty(value = "该考试是否已结束")
	private Boolean endStatus;

}
